ABOUT FILE EXTENSIONS AND FILETYPES

The FILE EXTENSION of a file is specified by the three letters at the end of the name of the file. ViSta recognizes the .VDF, .VAF, .VIS, .LSP, .WKS, and .FSL file extensions. 

All of the file extensions given above are associated with LISPBOSS, an input file managing program within the ViSta system. Using the file EXTENSION, along with other information, LISPBOSS determines the FILETYPE of the file and then determines which of the two other programs within the ViSta system should process the file. These other two programs are VISTA, which is the visual statistics program, and LSPEDIT, which is a Lisp editor. (File extensions are all associated with LISPBOSS during installation by the filetype.bat file, which resides in the ViSta home directory.) 

The FILETYPE of a file depends on the file extension. Sometimes it also depends on other information. The ViSta system distinguishes DATA, APPLET, and PROGRAM files (it also distinguishes WORKSPACE and BYTECODE filetypes which are not considered here.)

DATAFILE
A datafile defines the data which are the focus of a statistical visualization and analysis. The file consists of a single DATA function which ViSta uses to define a data object. Nothing else is permitted to be in a datafile. The file can reside on the local client computer or can be served to the local client computer by a remote server or via the internet.

APPLET FILE
An applet file defines an applet. An applets is small piece of code written in Lisp, ViSta's underlying programming language. Applets provide the user with a way to run ViSta and have it perform a specialized set of calculations specified by of the applet. Applets can also cause an already running instance of ViSta to perform the stated calculations. Applets can cause ViSta to run without the standard ViSta logo and desktop windows being shown.  The applet file consists of a single APPLET function whose body contains the applet code. Nothing else can be in an applet file. The file can reside on the local client computer or can be served to the local client computer by a remote server or via the internet.

PROGRAM FILE
A program file is a file which contains Lisp programs. Program files are lisp-containing files which are recognized by ViSta and which are neither data files nor applet files. These files can be loaded by ViSta or edited by LspEdit depending on the value of *edit-lisp-files*. Any lisp code can be in a program file.


RELATION BETWEEN FILE EXTENSION AND FILETYPE.

A file with the .LSP file extension can be either a DATAFILE or a PROGRAM FILE. It is treated as being a DATAFILE if it is in a directory whose path contains a directory named DATA, DATALIBRARY, MYDATA or MY-DATA (capitalization ignored). If it is not in such a directory, it is still treated a being a DATAFILE if the environmental variable *edit-lisp-files* is NIL.  Otherwise, a .LSP file is treated as being a PROGRAM FILE. 

The remaining file extensions have a one-to-one mapping onto file types, as follows: 

.VDF files are DATAFILES
.VAF files are APPLET FILES.
.VIS files are PROGRAM FILES.

WORKSPACE and BYTECODE files.
These filetypes are created by the Lisp compiler system and are contained in .WKS and .FSL files respectively. These files need not concern us here.

NO EXTENSION
If there is no extension specified, it is assumed that the extension should be either .LSP or .FSL, and looks for the most recent of these two.
